/*
 * Copyright 2010-2012 Susanta Tewari. <freecode4susant@users.sourceforge.net>
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

package genomemap.nb.jobs.properties;

import commons.nb.jobs.properties.ComboProperty;
import commons.nb.jobs.properties.ComboPropertyImpl;
import genomemap.cef.pui.ProcessComplDataEventImpl;

/**
 * Creates a builder from one or more properties.
 *
 * @author Susanta Tewari
 * @version 1.0.0
 * @history Created on Dec 20, 2011
 * @since 1.0.0
 */
public class BuilderPropertys_Gen {

    /**
     * Private constructor to prevent instantiation.
     */
    private BuilderPropertys_Gen() {}

    /**
     * Supplies the following properties in {@link genomemap.cef.pui.ClassifyGenes_EvtImpl}. The properties are:
     * <ul>
     * <li></li>
     * </ul>
     *
     * @return a new instance of the builder property
     */
    public static ComboProperty ORGANISM_DATA() {

        return new ComboPropertyImpl(Propertys_Gen.URL_DATA_Organism(),
                                     Propertys_Gen.LINKAGE_GROUPS());
    }

    /**
     * Supplies the following properties in {@link genomemap.cef.pui.ClassifyGenes_EvtImpl}. The properties are:
     * <ul>
     * <li>{@code commons.builder.StringList.url = stringlist:line-delimited//URL }</li>
     * </ul>
     *
     * @return a new instance of the builder property
     */
    public static ComboProperty INPUT_GENES_DATA() {
        return new ComboPropertyImpl(Propertys_Gen.URL_INPUT_GENES());
    }

    /**
     * Supplies the following properties in {@link ProcessComplDataEventImpl}. The properties are:
     * <ul>
     * <li>{@code genomemap.builder.AssignmentData.url = assignmentdata:csv//URL }</li>
     * </ul>
     *
     * @return a new instance of the builder property
     */
    public static ComboProperty ASSIGNMENT_DATA() {
        return new ComboPropertyImpl(Propertys_Gen.URL_DATA_ASSIGNMENT());
    }

    /**
     * Supplies the following properties in {@link genomemap.cef.pui.ComputeOrderModelLHood_EvtImpls.TAB08}. The properties are:
     * <ul>
     * <li>{@code genomemap.builder.TAB08Data.url = tab08data:xml//URL }<a href="genomemap/cef/pui/pob/doc-files/tab08-data.xml.txt">file format</a>, must accompany the <a href="genomemap/cef/pui/pob/doc-files/TAB08Data.xsd.txt">schema</a></li>
     * </ul>
     *
     * @return a new instance of the builder property
     */
    public static ComboProperty TAB08_DATA() {
        return new ComboPropertyImpl(Propertys_Gen.URL_DATA_TAB08());
    }

    /**
     * Supplies the following properties in {@link genomemap.cef.pui.ComputeOrderModelLHood_EvtImpls.KSA00}. The properties are:
     * <ul>
     * <li>{@code genomemap.builder.KSA00Data.url = ksa00data:xml//URL }<a href="genomemap/cef/pui/pob/doc-files/ksa00-data.xml.txt">file format</a>, must accompany the <a href="genomemap/cef/pui/pob/doc-files/KSA00Data.xsd.txt">schema</a></li>
     * </ul>
     *
     * @return a new instance of the builder property
     */
    public static ComboProperty KSA00_DATA() {
        return new ComboPropertyImpl(Propertys_Gen.URL_DATA_KSA00());
    }
}
